<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>
  
</body>
</html>

<script>
// 英文：
  // parse - 解析； 将字符串 解析为 其他数据类型
  // int 整数
  // float 小数
  // Question  问题； 简写Q

/* 数据类型之间的 转换
  1. 其他数据类型转  数字
    - Number(其他数据类型)  // 能转成数字的转数字，不能转数字转为 NaN
    - parseInt(其他数据类型)  // 将其他类型转为数字，若是字符串的话，从左往右依次解析，直到不能解析为止
    - parseFloat(其他数据类型) // 和 parseInt 唯一的区别，是若能解析成小数，则解析成小数

  2. 其他类型转 字符串
    - String(其他数据类型)
    - 除 undefined和null，剩余数据类型的变量.toString()  将其他数据类型转为 字符串
    - `+` 字符串拼接；只要  `+` 左右两侧，有一侧为字符串，即进行 字符串拼接

  3. 其他类型转 布尔值
    - Boolean(其他数据类型);
      转换逻辑，五种数据会被转为false：''、0、undefined、null、NaN；
          其他数据全被转为 true

    - `!`   ->   思路是：`负负得正`
      `!!其他数据类型`
*/


/* 与、或、非

  `&&` - 与：  布尔值表达式1 && 布尔值表达式2 && 布尔值表达式3 ...
        注：布尔值表达式 返回值为：「真」或「假」
               Question：「假」是什么意思？  ''、0、undefined、null、NaN + false

    机制：当所有布尔值表达式都为「真」，即返回最后一个「真」的值；
      若有一个为「假」，则立即返回这个「假」的值，后续表达式停止执行。   
    
    举例：  
      999 && 333 && 'aaa'                         ->  'aaa'
      999 && '' && 'aaa' && 3333222               ->  ''
      false && 999 && '' && 'aaa' && 3333222      ->   false



   `||` -  或：  布尔值表达式1 || 布尔值表达式2 || 布尔值表达式3 ...

    机制：从左往右执行，一个表达式为「真」，立即返回这个「真」
      若所有的都为「假」，则返回最后的「假」。

    举例：
      999 || 333 || 0    ->  999
      '' || undefined || null || 3  ->   3


  与和或优先级的问题：  `与` 的优先级 大于 `或`

    
 `!` - 非； 即取反；   注：其表达式返回值肯定为 “布尔值”
    举例：
      !true  ->   false
      !0     ->   true
      !''    ->   true
      !NaN   ->   true
      !undefined  ->  true
      !'yo'  ->   false
*/


/* 自增自减运算符
  i++; // 运行机制：先返回 i 的值，再将 i 的值 += 1;
  ++i; // 运行机制：先将 i 的值 += 1，再返回 i 的值。
*/

/* 条件分支 - if
写法1：  if (布尔值表达式) { ... }  // 若表达式为「真」

写法2： if (布尔值表达式) {代码块}  else {代码块}  // 若表达式为真，执行 if 的代码块，否则 执行 else 的代码块

写法3： if (布尔值表达式1) {代码块} // 哪个表达式为真，则执行其对应的代码块
      else if (布尔值表达式2) {代码块}
      else if (布尔值表达式...) {代码块} ...

写法4： if + N(N>=0)个 else if + else
*/

</script>